Many computer data processing applications are available for running on computers to manage data for various purposes. Many such data processing applications are adapted for specific purposes, such as accounting. An accounting data processing application generally provides data entry screens with a number of particular application data fields into which users enter data values. For example, one screen may be for entering data from vendor invoices. Typically, the screen will have application data fields such as vendor name, date, amount payable, invoice no. and description of the item(s) purchased. A user will generally receive invoices in paper form, or as an image via email or a website, and transcribe the values in the image fields corresponding to the application data fields and instruct the data processing application to store the data in its database. Examples of such programs include QuickBooks™ and Sage 50™.
This results in various problems. The transcription of data from an input form is time-consuming and error-prone. Even if the user is provided with an electronic copy of the form, the data is generally stored in an image so that the user cannot copy and paste the values of the image fields. Programs are available to perform optical character recognition (OCR) to convert the image field content to digital strings, but the process of performing OCR and copying the digital data corresponding to each application data field can be more time consuming than just entering the data by using the keyboard. Also, there is no simple means to retain the image file so that when the user is displaying data within the data processing application the user can readily pull up the image file in case the user needs to check some values or add additional information that was on the form but not entered, since the data processing application knows nothing about the image file.